
/******
2. Layout
**********************************************************************/
.centered {
    margin-left:auto;
    margin-right:auto;
    float: none;
    text-align: center;
}
/* Use this class if you want ceter element with span* class */
 .center {
    float: none !important;
    margin: 0 auto !important;
    text-align: center;
}
.large-text {
    line-height:1.2em;
    font-size: 1.875rem;
    color: #076ce0;
    padding:1.25rem;
    margin-bottom:1.25rem;
}
.circle-border {
    display: inline-block;
    -webkit-border-radius: 31.25rem;
    -moz-border-radius: 31.25rem;
    border-radius: 31.25rem;
    -khtml-border-radius: 31.25rem;
    border: .1875rem solid #fff;
}
.left-align {
    text-align:left;
}
.right-align {
    text-align:left;
}
/* .error {
    color: #CF0000;
    display: none;
} */
.invisible {
    display:none;
    visibility:visible;
}
/* .triangle {
    margin: 0 auto;
    text-align:center;
    width: 0;
    height: 0;
    border-top: 1.875rem solid #076ce0;
    border-left: 36.5625rem outset transparent;
    border-right: 36.5625rem outset transparent;
    position: relative;
} */
/*
2.1 Animations
**********/
 .zoom-in {
    -webkit-transform: scale(1, 1);
    -moz-transform: scale(1, 1);
    -o-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    -webkit-transition: all 250ms ease;
    -moz-transition: all 250ms ease;
    -o-transition: all 250ms ease;
    -ms-transition: all 250ms ease;
    transition: all 250ms ease;
}
.zoom-in:hover {
    -webkit-transform: scale(1.1, 1.1);
    -moz-transform: scale(1.1, 1.1);
    -o-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
}
/*
2.2 Buttons - There are buttons on a transparent background, primary and secondary color background.
**********/
 .button,  .button:visited, .button:focus {
    display:inline-block;
    border:.0625rem solid #076ce0;
    color:#076ce0;
    background-color:transparent;
    padding:.5rem;
    font-size:1rem;
    line-height:auto;
}
.button:hover, .button:active{
    background-color:#076ce0;
    color:#fff;
}
.button-sp, .button-sp:visited, .button-sp:focus {
    border:none;
    background-color:#FECE1A;
    color:#076ce0;
}
.button-sp:hover, .button-sp:active {
    background-color:#076ce0;
    color:#FECE1A;
    cursor: pointer;
}
.button-ps, .button-ps:visited, .button-ps:focus {
    border:none;
    background-color:#076ce0;
    color:#FECE1A;
}
.button-ps:hover, .button-ps:active {
    background-color:#FECE1A;
    color:#076ce0;
}
/*
2.3 Thumbnails - Predefined bootstrap's thumbnail class.
**********/
 .thumbnail {
    width:100%;
    height:100%;
    padding:0;
    overflow: hidden;
    position: relative;
    border:0;
    border-radius:0;
    box-shadow:none;
    text-align:center;
    background: #191a1c;
}
.thumbnail .more {
    display:block;
    z-index:4;
    position:absolute;
    top:-6.25rem;
    left:50%;
    margin:0 auto;
    margin-left:-2.5625rem;
    width:5rem;
    height:5rem;
    font-size:2.5rem;
    color:#fff;
    text-decoration:none;
    line-height: 4.375rem;
    text-align: center;
}
.thumbnail:hover .more {
    top:40%;
    margin-top:-2.5rem;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -o-transition: all 0.3 s ease-out;
    -ms-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
.thumbnail .p_disc {
    position: absolute;
    bottom: 0;
    left: 50%;
    -moz-transform: translateX(-50%);
    -ms-transform:translateX(-50%);
    -o-transform:  translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: rgba(0, 0, 0, 0.5);
    width: 100%;
}
.thumbnail .p_disc h3, 
.thumbnail .p_disc p {
    margin:0;
    padding: 0;
    width: 100%;
    overflow: hidden;
    text-overflow:ellipsis;
    white-space: nowrap;
}
.thumbnail .p_disc h3 {
    color: #FECE1A;
    font-size: 1.125rem;;
}
.thumbnail .p_disc p {
    color:#fff;
}
.thumbnail .mask {
    opacity:0.85;
    filter: alpha(opacity=85);
    top:100%;
    left:0;
    width:100%;
    height:100%;
    background:#076ce0;
    position:absolute;
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2 s ease-out;
    -ms-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}
.thumbnail:hover .mask {
    top:0;
}
/*
2.4 Socail icons
************/
 .social {
    list-style: none;
    float: none;
    position:relative;
    margin:.3125rem auto;
}
.social li {
    display:inline-block;
    line-height: 2rem;
    font-family:'Porta';
    font-size: 2rem;
    padding:0 .3125rem;
}
.social li a {
    margin:0;
    padding:0;
    width:2rem;
    height:2rem;
    color: #FECE1A;
}
.social li a:hover {
    color:#076ce0;
}
/*
3. Sections 
***************************************************************************/
/*  .section {
    padding-bottom: 3.125rem;
} */
/* .section .container {
    padding-top:3.125rem;
} */
.section .title {
    text-align: center;
    margin-bottom: 1rem;
}
.section .title h2 {
    font-weight: normal;
    padding: 0;
}
.section .title h4 {
    color: #FECE1A;
}
.section .title > p {
    font-size: 1rem;
    color: #FFF;
    font-weight: lighter;
    margin: 0;
}
.primary-section {
    margin-bottom: 1.125rem; 
}
.slogan {
    background:#076ce0;
    padding: 1.25rem 0;
    border-radius: 1rem;
    box-shadow: 0 0 .625rem .125rem #aaa;
}
.slogan p {
    color: #FECE1A;
    margin-bottom: 0;
    padding: 0;
    line-height:2.875rem; 
    letter-spacing: .625rem;
}


/* .primary-section .triangle {
    border-top: 2.5rem solid #fff;
} */
/* .primary-section .title {
    border-bottom: .125rem dashed #FECE1A;
}
.primary-section, .primary-section h3 {
    color: #FECE1A;
}
.primary-section h2 {
    color:#FFF;
} */
.secondary-section {
    background:#fff;
    margin-bottom: 1.125rem; 
}
.secondary-section .title {
    border-bottom: .125rem solid #076ce0;
}
.secondary-section h2, .secondary-section .title p {
    color: #076ce0;
}
.secondary-section .company {
    font-size: .875rem;
    text-indent: 2em;
}
.secondary-section .company > a {
    border: 1px solid #076ce0;
    border-radius: .625rem;
    box-sizing: border-box;
    box-shadow: 0 0 .3125rem .0625rem #aaa;
    background-color: #076ce0;
    color: #fff;
    padding: 0 .3125rem;
}
.secondary-section .company > a:hover {
    color: #FECE1A;
}
.secondary-section .newslist {
    /* text-align: center; */
    list-style: none;
    width: 100%;
}
.secondary-section .newslist > li {
    margin-left: 0;
    padding: .3125rem 0 .3125rem 1rem;
    color: #076ce0;
    box-sizing: border-box;
    width: 33.33%;
    height: 1.875rem;
    overflow: hidden;
    text-overflow:ellipsis;
    white-space: nowrap;
    float: left;
}
.secondary-section .newslist > li > span {
    display: inline-block;
    margin-right: 1rem;
    border: 1px solid #076ce0;
    border-radius: .625rem;
    box-sizing: border-box;
    box-shadow: 0 0 .3125rem .0625rem #aaa;
    background-color: #076ce0;
    color: #fff;
    padding: 0 .3125rem;
}
/* .primary-section .service p {
    margin-bottom: 1.25rem;
} */
/* Third section use bacground image 视频预留区样式 */
/* .third-section {
    padding-bottom: 1rem;
    background: #076ce0 url(../images/brand-bg.png) no-repeat center;
    border-top:.375rem solid #fff;
}
.third-section .container {
    position:relative;
}
.third-section .title {
    border-bottom: .0625rem solid #A1AAB7;
    color: #076ce0;
} */
/* .sub-section {
    margin-top:1.875rem;
} */
.sub-section .title {
    padding:0;
}

        /* 自增属性 */
            .primary-section .title p, .secondary-section .title p {
                text-indent: 2em;
                text-align: left;
                line-height: 1.5rem;
            }
            .secondary-section .title p {
                text-align: center;
            }

/*******
3.1 Services  
***************************************/
.service{
    padding: 1rem 0;
    background-color: #076ce0;
    box-shadow: 0 0 .625rem .125rem #aaa;
    border-radius: 10%;
}
 .service, .service h2 {
    /* padding-top:.9375rem; */
}
.service h3 {
    color: #FECE1A;
}
.service p {
    padding:0rem .625rem;
    height:3.75rem;
    color: #fff;
    text-align: left;
    text-indent: 2em;
}
.service img {
    width:9.375rem;
    height:9.375rem;
}
/*
3.2 Portfolio
***************************************/
.single-project {
    margin-bottom:1.875rem;
    background:#076ce0;
}
.single-project img {
    width:100%;
}
.project-description {
    padding-right:1.25rem;
}
.project-description p {
    padding: 0;
    color: #fff;
    margin-bottom: 0;
}
.project-title {
    margin-top:.9375rem;
    margin-bottom:.9375rem;
    border-bottom:.0625rem solid #FECE1A;
}
.project-title h3 {
    float:left;
    margin-top:0;
    padding:0;
    width:80%;
}
.project-title .close {
    color: #FECE1A;
    opacity: 1;
    margin-top:.625rem;
}
.project-info span, .project-title h3 {
    color:#FECE1A;
}
.project-info {
    font-weight:100;
    padding:.625rem 0;
}
.project-info span {
    width: 5rem;
    display: inline-block;
}
.project-info div {
    margin-bottom:.3125rem;
}
.close {
    float: right;
    width: 2.5rem;
    height: 2.5rem;
    text-align: center;
}
#portfolio-grid .mix {
    opacity: 0;
    display: none;
}
.nav-pills {
    margin-bottom: 1rem;
}
.nav-pills > li > a {
    font-size: 1.25rem;
    background: transparent;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    margin-right:.3125rem;
    padding-left:1.5625rem;
    padding-right:1.5625rem;
    border: .0625rem solid #076ce0;
}
.nav-pills > li > a:hover, .nav-pills > .active > a, .nav-pills > .active > a:hover, .nav-pills > .active > a:focus {
    background: #076ce0;
    color: #fff;
}
.moreProduct {
    display: block;
    border: 1px solid #076ce0;
    text-align: center;
    line-height: 2rem;
    font-size: 1.25rem;
}
.moreProduct a {
    display: block;
    width: 100%;
    height: 100%;
}
.moreProduct a:hover {
    background-color: #076ce0;
    color: #fff;
}
/*
3.3 About
******************************************************************/
/*  .team .thumbnail {
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    padding: .625rem;
    border: .0625rem solid #fff;
}
.team .thumbnail:hover .social {
    z-index: 5;
}
.team .thumbnail:hover .social a {
    color:#fff;
}
.team .thumbnail .mask {
    background: #FECE1A;
}
.team .thumbnail .mask h2 {
    margin-top:20%;
}
.team .thumbnail .mask, .team .thumbnail .mask h3, .team .thumbnail .mask p, .team .thumbnail:hover h3, .team .thumbnail:hover .social a:hover {
    color:#181A17;
}
.culture {
    margin: 0;
    color: #fff;
} */
/*
3.4 Clients
**********************************************************************/
 .client-slider img {
    border:.0625rem solid white;
}
.client-slider img:hover {
    background-color:#FECE1A;
}
.client-nav {
    list-style:none;
    margin-top:.625rem;
}
.client-nav li {
    float:left;
    display:block;
    margin-left:.625rem;
}
.client-nav li a {
    display:inherit;
    padding:.3125rem;
    background:#FECE1A;
    border-radius:.1875rem;
    width:1.25rem;
    height:1.25rem;
}
.client-nav li a:hover {
    background:#076ce0;
}
.testimonial p {
    color:#076ce0;
    background:#FECE1A;
    padding:.9375rem;
    margin:0;
}
.testimonial .arrow {
    margin-left:.625rem;
    width:0;
    border-top:.625rem solid #FECE1A;
    border-left: 1.25rem outset transparent;
    border-right: 1.25rem outset transparent;
}
.testimonial .whopic {
    display:inline-block;
}
.testimonial .whopic img {
    margin-top:.625rem;
    width:3.125rem;
    height:3.125rem;
    float:left;
}
.testimonial .whopic strong {
    float:left;
    margin-top:.625rem;
    padding-left:.625rem;
}
.testimonial .whopic small {
    display:block;
    font-size:.75rem;
    
}
.testimonial-text{
    display:block;
    font-size:1.375rem;
    text-align:center;
    margin:0 auto;
    margin-top:1.875rem;
    width:70%;
    line-height:1.3em;
}

/*
3.6 Contact
********************************************************************/
 .contact {
    background: #FECE1A;
}
.contact .title {
    margin-bottom: 0;
}
.contact h1, .contact h2, .contact h3, .contact h4, .contact h5, .contact h6, .contact .section .title > p, .contact .social > li > a {
    color: #076ce0;
}
/* .contact textarea, .contact input[type="text"] {
    padding: .625rem;
    line-height: 1.25rem;
    height: auto;
}
.contact textarea {
    height: 7.5rem;
} */
.contacts, .contact .social {
    color: #fff;
    list-style: none;
    margin-left: .625rem;
}
.contacts > li {
    margin-top: .9375rem;
}
.contacts > li > a {
    color: #fff;
}
.contact .flexbox {
    display: flex;
}
.contact-info {
    margin: 0 auto 1rem auto;
    /* background-color: rgba(254,206,26,0.7); */
    overflow: hidden;
}
.contact .contact-info ul{
     /* font-weight:normal; */
    list-style: none;
    font-weight: 400;
    color: #076ce0;
    font-size: 1rem;
    text-align: left;
    margin: 0 1rem; 
    flex: 2;
    text-align:center;
}
.contact .contact-info ul > li {
    line-height: 2.5rem;

}
.contact .contactImg {
    flex: 1;
    align-self: center;
    margin: 0 1rem; 
}
@media (max-width: 30rem) {
    .contact .flexbox {
        display: flex;
        flex-direction: column;
    }
    .contact .contactImg {
        flex: 1;
        align-self: center;
        margin: 0 1rem; 
        width: 10rem;
    }
}
/* .contact-info .icon {
    margin:.625rem auto;
    font-size:1.875rem;
} */
.map-wrapper {
    position:relative;
    height:20rem;
}
.map-canvas {
    position:absolute;
    height:100%;
    color: #29383F;
    left:0;
    top:0;
    right:0;
}
.contact .social {
    display: inline-block;
    margin-left:0;
}
.contact .social li {
    line-height: 2rem;
    padding:.625rem .625rem;
    font-family:'Porta';
    font-size: 3.125rem;
    transition: margin 0.4s;
    -webkit-transition: margin 0.4s;
}
.contact .social li a {
    color:#fff;
}
.contact .social li a:hover {
    color:#076ce0;
}
/* .message-btn {
    border:.0625rem solid #747C89;
    color:#747C89;
    background-color:transparent;
    padding:.9375rem 1.875rem;
    font-size:1.0625rem;
}
.message-btn:hover {
    background-color:#FECE1A;
} */
/* .black {
    color:#076ce0;
} */

